home *** CD-ROM | disk | FTP | other *** search
/ PC World 2007 June / PCWorld_2007-06_cd.bin / v cisle / rainlendar / Rainlendar-Lite-2.1.exe / scripts / months.lua < prev    next >
Text File  |  2006-12-23  |  1KB  |  49 lines

  1. -- 
  2. -- DO NOT EDIT THIS FILE. IT WILL BE OVERWRITTEN WHEN YOU UPGRADE RAINLENDAR!
  3. -- 
  4.  
  5. --
  6. -- Changes the date that Rainlendar shows.
  7. --
  8. -- Parameters: 
  9. --    newMonth - A relative month offset or absolute month.
  10. --               Use + or - prefix to define a relative value.
  11. --               Value 0 changes to the current month.
  12. -- Return:
  13. --    Nothing
  14. --
  15. function Global_ShowMonth(newMonth)
  16.     -- Get the currently displayed date from Rainlendar
  17.     local day, month, year = Rainlendar_GetDisplayDate()
  18.  
  19.   if string.sub(newMonth, 1, 1) == "+" or string.sub(newMonth, 1, 1) == "-" then
  20.         -- Relative value -> adjust the month
  21.         month = month + newMonth
  22.  
  23.         -- Make sure that the date is correct
  24.         while month < 0 do
  25.             month = month + 12
  26.             year = year - 1
  27.         end
  28.         while month >= 12 do
  29.             month = month - 12
  30.             year = year + 1
  31.         end
  32.   elseif newMonth == "0" then
  33.         -- Set to current date
  34.       month = os.date("%m") - 1
  35.       year = os.date("%Y")
  36.   else
  37.     -- Set to selected month
  38.       month = newMonth - 1
  39.       year = os.date("%Y")
  40.   end
  41.  
  42.     -- Set the date to Rainlendar
  43.     Rainlendar_SetDisplayDate(day, month, year)
  44.     
  45.     -- Redraw so that the change can be seen
  46.     Rainlendar_Redraw(0)
  47. end
  48.  
  49.